import { createHashRouter, Navigate } from 'react-router-dom'
import Login from '@renderer/pages/login'
import Layout from '@renderer/layouts/Layout'
import Home from '@renderer/pages/home'
import UserList from '@renderer/pages/user/list'
import UserInfo from '@renderer/pages/user/info'

// 保护路由组件
const ProtectedRoute = ({ children }) => {
    const userInfo = localStorage.getItem("userInfo")
    if (!userInfo) {
        // 用户未认证时重定向到登录页面
        return <Navigate to="/login" />
    }

    // 用户已认证，允许访问受保护的路由
    return <Layout>{children}</Layout>
}

// 全局路由
export const globalRouters = createHashRouter([
    // 对精确匹配"/login"，跳转Login页面
    {
        path: '/login',
        element: <Login />
    },
    // 精确匹配"/home"，跳转Home页面
    {
        path: '/home',
        element: <Home />
    },
    // 如果URL没有"#路由"，跳转Login页面
    {
        path: '/',
        element: <ProtectedRoute/>,
        children: [
            {
                path: '/user',
                element: <UserList/>
            },
            {
                path: '/userInfo',
                element: <UserInfo/>
            }
        ]
    },
    // 未匹配，，跳转Login页面
    {
        path: '*',
        element: <Navigate to="/login" />
    }
])
